#include "compile_run.hpp"
#include "../comm/httplib.h"
using namespace httplib;
using namespace ns_compile_and_run;
void Usage(const std::string& proc)
{
    std::cout<<proc<<"启动参数错误,需传入Port"<<std::endl;
    return;
}
int main(int argc,char* argv[])
{
    //传入命令必须为两个,一个是运行程序本身./compile_server,一个是指定的端口号
    if(argc!=2)
    {
        Usage(argv[0]);
        return 1;
    }
    //创建服务器实例
    Server srv;
    //定义路由和处理函数
    // 测试
    // srv.Get("/hello",[](const Request& req,Response& resp){
    //     resp.set_content("hello httplib,你好 httplib!", "text/plain;charset=utf-8");
    // });
    srv.Post("/compile_server",[](const Request& req,Response& resp){
        std::string in_json=req.body;
        std::string out_json;
        if(in_json.empty()==false)
        {
        CompileRun::start(in_json,out_json);
        resp.set_content(out_json, "application/json;charset=utf-8");
        }
    });
    //启动服务器监听
    srv.listen("0.0.0.0",atoi(argv[1]));
    return 0;
}